//package com.travel.travelServer.service1.impl;
//
//import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
//import com.github.pagehelper.PageHelper;
//import com.github.pagehelper.PageInfo;
//import com.travel.travelServer.entity1.Role;
//import com.travel.travelServer.entity1.RoleMenu;
//import com.travel.travelServer.entity1.vo.RoleVo;
//import com.travel.travelServer.mapper1.RoleMapper;
//import com.travel.travelServer.mapper1.RoleMenuMapper;
//import com.travel.travelServer.service1.RoleService;
//import com.travel.travelServer.utils.BaseService;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Service;
//import org.springframework.transaction.annotation.Transactional;
//
//import java.util.Arrays;
//import java.util.List;
//
//
///**
// * <p>
// *  role表 业务接口实现
// * </p>
// *
// * @author <>
// *
// */
//@Service
//public class RoleServiceImpl extends BaseService<RoleMapper, Role> implements RoleService {
//
//    @Autowired
//    RoleMapper roleMapper;
//
//    @Autowired
//    RoleMenuMapper roleMenuMapper;
//
//
//    /**
//     * 新增Role
//     *
//     * @param roleVo
//     * @return 结果
//     */
//    @Transactional(rollbackFor = Exception.class)
//    @Override
//    public int insertRole(RoleVo roleVo) {
//        roleMapper.insert(roleVo);
//        List<Long> menuIds = roleVo.getMenuIds();
//        if (menuIds.size() > 0){
//            for (Long menuId : menuIds) {
//                RoleMenu roleMenu = new RoleMenu();
//                roleMenu.setRoleId(roleVo.getId());
//                roleMenu.setMenuId(menuId);
//                roleMenuMapper.insert(roleMenu);
//            }
//        }
//        return 1;
//    }
//
//    /**
//     * 单个删除Role信息
//     *
//     * @param id-主键
//     * @return 结果
//     */
//    @Transactional(rollbackFor = Exception.class)
//    @Override
//    public int deleteById(Long id) {
//        roleMapper.deleteById(id);
//        LambdaQueryWrapper<RoleMenu> wrapper = new LambdaQueryWrapper<>();
//        wrapper.eq(RoleMenu::getRoleId, id);
//        return roleMenuMapper.delete(wrapper);
//    }
//
//    /**
//     * 批量删除Role信息
//     *
//     * @param ids-主键[]
//     * @return 结果
//     */
//    @Transactional(rollbackFor = Exception.class)
//    @Override
//    public int deleteByIds(Long[] ids) {
//        roleMapper.deleteBatchIds(Arrays.asList(ids));
//        for (Long id : ids) {
//            LambdaQueryWrapper<RoleMenu> wrapper = new LambdaQueryWrapper<>();
//            wrapper.eq(RoleMenu::getRoleId, id);
//            roleMenuMapper.delete(wrapper);
//        }
//        return 1;
//    }
//
//    /**
//     * 修改Role
//     *
//     * @param roleVo
//     * @return 结果
//     */
//    @Transactional(rollbackFor = Exception.class)
//    @Override
//    public int updateRole(RoleVo roleVo) {
//        roleMapper.updateById(roleVo);
////        LambdaQueryWrapper<RoleMenu> wrapper = new LambdaQueryWrapper<>();
////        wrapper.eq(RoleMenu::getRoleId, roleVo.getId());
////        roleMenuMapper.delete(wrapper);
////        List<Long> menuIds = roleVo.getMenuIds();
////        if (menuIds.size() > 0){
////            for (Long menuId : menuIds) {
////                RoleMenu roleMenu = new RoleMenu();
////                roleMenu.setRoleId(roleVo.getId());
////                roleMenu.setMenuId(menuId);
////                roleMenuMapper.insert(roleMenu);
////            }
////        }
//        return 1;
//    }
//
//    /**
//     * 查询Role
//     *
//     * @param id-主键
//     * @return role
//     */
//    @Override
//    public Role selectById(Long id) {
//        return roleMapper.selectById(id);
//    }
//
//    /**
//     * 查询Role列表
//     *
//     * @param roleVo
//     * @return Role集合
//     */
//    @Override
//    public List<Role> selectRoleList(RoleVo roleVo) {
//        LambdaQueryWrapper<Role> queryWrapper = new LambdaQueryWrapper<>();
//        //queryWrapper.eq(Role::getId, roleVo.getId).select(Role::getId);
//        return roleMapper.selectList(queryWrapper);
//    }
//
//    @Override
//    public PageInfo<Role> getInfoPage(RoleVo roleVo) {
//        // 使用 PageHelper 分页
//        PageHelper.startPage(roleVo.getPageNum(), roleVo.getPageSize());
//        LambdaQueryWrapper<Role> wrapper = new LambdaQueryWrapper<>();
//        wrapper.like(Role::getName, roleVo.getName());
//        List<Role> roles = roleMapper.selectList(wrapper);
//        return new PageInfo<>(roles);
//    }
//
//}
